package com.jakx.service.kafka;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.kafka.support.SendResult;
import org.springframework.stereotype.Component;
import org.springframework.util.concurrent.ListenableFuture;
import org.springframework.util.concurrent.ListenableFutureCallback;

import java.util.concurrent.ExecutionException;

@Component
public class KafkaProducer {

    // 使用kafka客户端
//    @Autowired
//    private KafkaTemplate kafkaTemplate;
//
//    public void sendMsg(String msg){
//        // 异步发送消息
//        ListenableFuture<SendResult<Integer,String>> future =  kafkaTemplate.send("test1",msg);
//        // 注入回调函数
//        future.addCallback(new ListenableFutureCallback<SendResult<Integer, String>>() {
//            @Override
//            public void onFailure(Throwable throwable) {
//                System.out.println("callback fail");
//            }
//
//            @Override
//            public void onSuccess(SendResult<Integer, String> integerStringSendResult) {
//                System.out.println("callback success");
//            }
//        });
//        kafkaTemplate.flush();
//        System.out.println("MMMM");
//    }
}
